pysources = ['Gst.py', 'GstPbutils.py', 'GstVideo.py', 'GstAudio.py','GstAnalytics.py', 'GstApp.py']
python.install_sources(pysources,
  pure : false,
  subdir: 'gi/overrides',
)

host_system = host_machine.system()
if host_system == 'windows'
  gst_dep_for_gi = gst_dep
else
  gst_dep_for_gi = gst_dep.partial_dependency(compile_args: true, includes: true, sources: true)
  gstanalytics_dep_for_gi = gstbad_dep.partial_dependency(compile_args:true, includes:true, sources:true)
endif

gstpython = python.extension_module('_gi_gst',
    sources: ['gstmodule.c'],
    install: true,
    install_dir : pygi_override_dir,
    install_tag: 'python-runtime',
    include_directories : [configinc],
    dependencies : [gst_dep_for_gi, python_dep, pygobject_dep],
)

gstanalyticspython = python.extension_module ('_gi_gst_analytics',
  sources: ['gstanalyticsmodule.c'],
  install: true,
  install_dir: pygi_override_dir,
  install_tag: 'python-runtime',
  include_directories : [configinc],
  dependencies : [gst_dep_for_gi, python_dep, pygobject_dep, gstbad_dep],
)

env = environment()
env.prepend('_GI_OVERRIDES_PATH', [meson.current_source_dir(), meson.current_build_dir()])
env.prepend('PYGI_OVERRIDES_PATH', [meson.current_source_dir(), meson.current_build_dir()])
meson.add_devenv(env)

# Convenience target to build the Python extension modules
# This ensures the _gi_gst and _gi_gst_analytics modules are built
gst_python_extensions = alias_target('gst-python-extensions',
  gstpython,
  gstanalyticspython
)
